﻿#region using statements

using System;

using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;

using NGen;
using NGen.Managers.GUI;

using Nuclex.UserInterface;
using Nuclex.UserInterface.Controls;
using Nuclex.UserInterface.Controls.Desktop;

//using Psych.Misc;
//using Psych.Objects.Towers;

#endregion


namespace Psych.GUILayouts
{
    /// <summary>
    /// 	The gui used for the play state
    /// </summary>
    public class GUIElementPlayStateLayout : GUIElement
    {
        #region local fields

        //objects which make up this gui

        //private readonly ButtonControl m_addFireButton = new ButtonControl();

        //private readonly ButtonControl m_addIceButton = new ButtonControl();

        //private readonly ButtonControl m_addWindButton = new ButtonControl();

        //private readonly ButtonControl m_selectedBackground = new ButtonControl();

        //private readonly ButtonControl m_selectedSellButton = new ButtonControl();

        //private readonly LabelControl m_selectedTextLabel = new LabelControl();

        //private readonly ButtonControl m_selectedUpgradeButton = new ButtonControl();

        //private readonly ButtonControl m_startButton = new ButtonControl();

        //private readonly ButtonControl m_textBackground = new ButtonControl();

        //private readonly LabelControl m_textLabel = new LabelControl();

        //private readonly LabelControl m_textValueLabel = new LabelControl();

        #endregion

        #region local properties

        /// <summary>
        /// 	_Initialize this gui
        /// </summary>
        protected override void _Initialize()
        {
            /*
              //create the background for the game stats display
              m_textBackground.Bounds = new UniRectangle(615, 12, 160, 115);
              m_textBackground.Enabled = false;

              //create the text label for the game stats display
              m_textLabel.Bounds = new UniRectangle(15, 18, 0, 0);
              m_textLabel.Text = "Gold\n\nLives\n\nLevel\n\n";
              m_textBackground.Children.Add(m_textLabel);

              //label which displays the numbers in the game stats display
              m_textValueLabel.Bounds = new UniRectangle(60, 18, 0, 0);
              m_textBackground.Children.Add(m_textValueLabel);

              m_startButton.Bounds = new UniRectangle(615, 229, 160, 40);
              m_startButton.Text = "Start Level";
              m_startButton.Pressed += delegate { ThrowGuiEvent("startPressed"); };

              _Children.Add(m_textBackground);
            
              //background for the tower stats display
              m_selectedBackground.Bounds = new UniRectangle(615, 302, 160, 286);
              m_selectedBackground.Enabled = false;
              */
        }

        /// <summary>
        /// 	Update this gui
        /// </summary>
        /// <param name = "p_gameTime">snapshot of timing values</param>
        protected override void Update(GameTime p_gameTime)
        {
            //update the numbers for the game stats display
           
        }

        /// <summary>
        /// 	Draw this gui
        /// </summary>
        /// <param name = "p_gameTime">snapshot of timing values</param>
        protected override void _Draw(GameTime p_gameTime)
        {
           
            
        }

        /// <summary>
        /// 	Cleanup this gui
        /// </summary>
        protected override void _Cleanup()
        {
            //no cleanup necessary outside of the normal memory deallocation
            //C# takes care of this via garbage collection
        }

        #endregion
    }
}
